3,629 research outputs found

    Understanding and evolving the Rust programming language

    Get PDF
    Rust is a young systems programming language that aims to fill the gap between high-level languages—which provide strong static guarantees like memory and thread safety—and low-level languages—which give the programmer fine-grained control over data layout and memory management. This dissertation presents two projects establishing the first formal foundations for Rust, enabling us to better understand and evolve this important language: RustBelt and Stacked Borrows. RustBelt is a formal model of Rust’s type system, together with a soundness proof establishing memory and thread safety. The model is designed to verify the safety of a number of intricate APIs from the Rust standard library, despite the fact that the implementations of these APIs use unsafe language features. Stacked Borrows is a proposed extension of the Rust specification, which enables the compiler to use the strong aliasing information in Rust’s types to better analyze and optimize the code it is compiling. The adequacy of this specification is evaluated not only formally, but also by running real Rust code in an instrumented version of Rust’s Miri interpreter that implements the Stacked Borrows semantics. RustBelt is built on top of Iris, a language-agnostic framework, implemented in the Coq proof assistant, for building higher-order concurrent separation logics. This dissertation begins by giving an introduction to Iris, and explaining how Iris enables the derivation of complex high-level reasoning principles from a few simple ingredients. In RustBelt, this technique is exploited crucially to introduce the lifetime logic, which provides a novel separation-logic account of borrowing, a key distinguishing feature of the Rust type system.Rust ist eine junge systemnahe Programmiersprache, die es sich zum Ziel gesetzt hat, die LĂŒcke zu schließen zwischen Sprachen mit hohem Abstraktionsniveau, die vor Speicher- und NebenlĂ€ufigkeitsfehlern schĂŒtzen, und Sprachen mit niedrigem Abstraktionsniveau, welche dem Programmierer detaillierte Kontrolle ĂŒber die ReprĂ€sentation von Daten und die Verwaltung des Speichers ermöglichen. Diese Dissertation stellt zwei Projekte vor, welche die ersten formalen Grundlagen fĂŒr Rust zum Zwecke des besseren VerstĂ€ndnisses und der weiteren Entwicklung dieser wichtigen Sprache legen: RustBelt und Stacked Borrows. RustBelt ist ein formales Modell des Typsystems von Rust einschließlich eines Korrektheitsbeweises, welcher die Sicherheit von Speicherzugriffen und NebenlĂ€ufigkeit zeigt. Das Modell ist darauf ausgerichtet, einige komplexe Komponenten der Standardbibliothek von Rust zu verifizieren, obwohl die Implementierung dieser Komponenten unsichere Sprachkonstrukte verwendet. Stacked Borrows ist eine Erweiterung der Spezifikation von Rust, die es dem Compiler ermöglicht, den Quelltext mit Hilfe der im Typsystem kodierten Alias-Informationen besser zu analysieren und zu optimieren. Die Tauglichkeit dieser Spezifikation wird nicht nur formal belegt, sondern auch an echten Programmen getestet, und zwar mit Hilfe einer um Stacked Borrows erweiterten Version des Interpreters Miri. RustBelt basiert auf Iris, welches die Konstruktion von Separationslogiken fĂŒr beliebige Programmiersprachen im Beweisassistenten Coq ermöglicht. Diese Dissertation beginnt mit einer EinfĂŒhrung in Iris und erklĂ€rt, wie komplexe Beweismethoden mit Hilfe weniger einfacher Bausteine hergeleitet werden können. In RustBelt wird diese Technik fĂŒr die Umsetzung der „Lebenszeitlogik“ verwendet, einer Erweiterung der Separationslogik mit dem Konzept von „Leihgaben“ (borrows), welche eine wichtige Rolle im Typsystem von Rust spielen.This research was supported in part by a European Research Council (ERC) Consolidator Grant for the project "RustBelt", funded under the European Union’s Horizon 2020 Framework Programme (grant agreement no. 683289)

    In-Medium Spectral Functions of Vector- and Axial-Vector Mesons from the Functional Renormalization Group

    Full text link
    In this work we present first results on vector and axial-vector meson spectral functions as obtained by applying the non-perturbative functional renormalization group approach to an effective low-energy theory motivated by the gauged linear sigma model. By using a recently proposed analytic continuation method, we study the in-medium behavior of the spectral functions of the ρ\rho and a1a_1 mesons in different regimes of the phase diagram. In particular, we demonstrate explicitly how these spectral functions degenerate at high temperatures as well as at large chemical potentials, as a consequence of the restoration of chiral symmetry. In addition, we also compute the momentum dependence of the ρ\rho and a1a_1 spectral functions and discuss the various time-like and space-like processes that can occur.Comment: 18 pages, 13 figures, 1 tabl

    Spectral Functions from the Functional Renormalization Group

    Full text link
    We present results for in-medium spectral functions obtained within the Functional Renormalization Group framework. The analytic continuation from imaginary to real time is performed in a well-defined way on the level of the flow equations. Based on this recently developed method, results for the sigma and the pion spectral function for the quark-meson model are shown at finite temperature, finite quark-chemical potential and finite spatial momentum. It is shown how these spectral function become degenreate at high temperatures due to the restoration of chiral symmetry. In addition, results for vector- and axial-vector meson spectral functions are shown using a gauged linear sigma model with quarks. The degeneration of the ρ\rho and the a1a_1 spectral function as well as the behavior of their pole masses is discussed.Comment: CPOD 2017 Proceeding

    Effect of viscoelasticity on displacement processes in porous media

    Get PDF
    Improving the displacement efficiency of capillary entrapments in porous media by adding high molecular weight polymers to the invading phase has various industrial applications, from enhanced oil recovery to soil remediation. Apart from an increased viscosity contrast compared to regular water flooding, the flow of viscoelastic polymer solutions exhibits unstable flow behavior even at small Reynolds numbers, which can lead to an additional displacement mechanism of the capillary entrapments. In this work, we employ a microfluidic approach to unravel the underlying physics and mechanism of this enhanced pore scale displacement. To this end, we show that the major complex topological flow features in a typical porous medium can be mimicked by a flow geometry consisting of a single capillary entrapment connected to two symmetric serpentine channels. This design excludes the effect of viscous stresses and allows direct focus on displacement processes driven solely by elastic stresses. We show that the unique viscoelastic fluid features, such as the significant storage and release of elastic stresses and first normal stress difference, combined with the flow geometry, lead to purely elastic instability and secondary flow, which in turn provide the stresses necessary to overcome the capillary threshold and displace the capillary entrapment

    Effect of elastic instability on mobilization of capillary entrapments

    Get PDF
    The flow of viscoelastic polymer solutions and their use as displacing agents in porous media are important for industrial applications, such as enhanced oil recovery and soil remediation. The complexity of flow and high elasticity of conventionally used viscoelastic polymer solutions can lead to purely elastic instability in porous media. In this study, we investigate the impact of this instability on displacing capillary entrapments at low Reynolds numbers using a microfluidic approach. Our unique design consists of a single-capillary entrapment connected to two symmetric serpentine channels. This design excludes the effect of viscous forces and enables a direct focus on displacement processes driven solely by elastic forces. After the onset of purely elastic instability, an unstable base flow is observed in the serpentine channels. We discuss that the pressure fluctuations caused by this unstable flow create an instantaneous non-equilibrium state between the two ends of the capillary entrapment. This provides the driving pressure to overcome the capillary threshold pressure and eventually displace the entrapped oil. In our geometry, we observe that the displacement coincides with the emergence of a fully developed elastic turbulent state

    Simple generation of site-directed point mutations in the Escherichia coli chromosome using RedÂź/ETÂź Recombination

    Get PDF
    Background: Introducing point mutations into bacterial chromosomes is important for further progress in studies relying on functional genomics, systems- and synthetic biology, and for metabolic engineering. For many investigations, chromosomal systems are required rather than artificial plasmid based systems. Results: Here we describe the introduction of a single point mutation into the Escherichia coli chromosome by site-directed mutagenesis without leaving any selection marker. We used Red (R)/ET (R) Recombination in combination with rpsL counter-selection to introduce a single point mutation into the E. coli MG1655 genome, one of the widely used bacterial model strains in systems biology. The method we present is rapid and highly efficient. Since single-stranded synthetic oligonucleotides can be used for recombination, any chromosomal modification can be designed. Conclusion: Chromosomal modifications performed by rpsL counter-selection may also be used for other bacteria that contain an rpsL homologue, since Red (R)/ET (R) Recombination has been applied to several enteric bacteria before

    Scaling purely elastic instability of strongly shear thinning polymer solutions

    Get PDF
    Flow of viscoelastic polymer solutions in curved channels exhibits instability caused by the elastic nature of polymers even at low Reynolds numbers. However, scaling of the onset of this purely elastic instability in semidilute polymer solutions has not been previously reported. Here we experimentally investigate the flow of highly elastic polymer solutions above their overlap concentrations using pressure measurements and particle image velocimetry. We demonstrate that the onset of instability can be scaled by including shear dependent rheological properties of the polymer solutions in the nonlinear stability analysis. As a result, a universal criterion as function of normalized polymer concentration is provided for scaling the onset of purely elastic instability in the semidilute regime regardless of the type and molecular weight of the polymer

    NRG for the bosonic single-impurity Anderson model: Dynamics

    Full text link
    The bosonic single-impurity Anderson model (B-SIAM) is studied to understand the local dynamics of an atomic quantum dot (AQD) coupled to a Bose-Einstein condensation (BEC) state, which can be implemented to probe the entanglement and the decoherence of a macroscopic condensate. Our recent approach of the numerical renormalization group (NRG) calculation for the B-SIAM revealed a zero-temperature phase diagram, where a Mott phase with local depletion of normal particles is separated from a BEC phase with enhanced density of the condensate. As an extension of the previous work, we present the calculations of the local dynamical quantities of the B-SIAM which reinforce our understanding of the physics in the Mott and the BEC phases.Comment: 12 pages, 13 figure

    Domain swapping reveals that the N-terminal domain of the sensor kinase KdpD in Escherichia coli is important for signaling

    Get PDF
    <p>Abstract</p> <p>Background</p> <p>The KdpD/KdpE two-component system of <it>Escherichia coli </it>regulates expression of the <it>kdpFABC </it>operon encoding the high affinity K<sup>+ </sup>transport system KdpFABC. The input domain of KdpD comprises a domain that belongs to the family of universal stress proteins (Usp). It has been previously demonstrated that UspC binds to this domain, resulting in KdpD/KdpE scaffolding under salt stress. However the mechanistic significance of this domain for signaling remains unclear. Here, we employed a "domain swapping" approach to replace the KdpD-Usp domain with four homologous domains or with the six soluble Usp proteins of <it>E. coli</it>.</p> <p>Results</p> <p>Full response to salt stress was only achieved with a chimera that contains UspC, probably due to unaffected scaffolding of the KdpD/KdpE signaling cascade by soluble UspC. Unexpectedly, chimeras containing either UspF or UspG not only prevented <it>kdpFABC </it>expression under salt stress but also under K<sup>+ </sup>limiting conditions, although these hybrid proteins exhibited kinase and phosphotransferase activities <it>in vitro</it>. These are the first KdpD derivatives that do not respond to K<sup>+ </sup>limitation due to alterations in the N-terminal domain. Analysis of the KdpD-Usp tertiary structure revealed that this domain has a net positively charged surface, while UspF and UspG are characterized by net negative surface charges.</p> <p>Conclusion</p> <p>The Usp domain within KdpD not only functions as a binding surface for the scaffold UspC, but it is also important for KdpD signaling. We propose that KdpD sensing/signaling involves alterations of electrostatic interactions between the large N- and C-terminal cytoplasmic domains.</p
    • 

    corecore